home *** CD-ROM | disk | FTP | other *** search
/ Aminet 48 / Aminet 48 (2002)(GTI - Schatztruhe)[!][Apr 2002].iso / Aminet / text / edit / vim60rt.lha / Vim / vim60 / syntax / progress.vim < prev    next >
Encoding:
Text File  |  2001-05-11  |  18.6 KB  |  216 lines

  1. " Vim syntax file
  2. " Language:                Progress 4GL
  3. " Filename extensions:    *.p (collides with Pascal),
  4. "                        *.i (collides with assembler)
  5. "                        *.w (collides with cweb)
  6. " Maintainer:            Philip Uren            <philu@computer.org>
  7. " Contributors:         Chris Ruprecht        <chrup@mac.com>
  8. "                        Philip Uren            <philu@computer.org>
  9. "                        Mikhail Kuperblum    <mikhail@whasup.com>
  10. " URL:                    http://www.zeta.org.au/~philu/vim/progress.vim
  11. " Last Change:            Thu May  3 08:49:47 EST 2001
  12.  
  13. " For version 5.x: Clear all syntax items
  14. " For version 6.x: Quit when a syntax file was already loaded
  15. if version < 600
  16.     syntax clear
  17. elseif exists("b:current_syntax")
  18.     finish
  19. endif
  20.  
  21. if version >= 600
  22.   setlocal iskeyword=@,48-57,_,-,!,#,$,%
  23. else
  24.   set iskeyword=@,48-57,_,-,!,#,$,%
  25. endif
  26.  
  27. syn case ignore
  28.  
  29. " Progress Blocks of code and mismatched "end." errors.
  30. syn match   ProgressEndError        "\<end\>"
  31. syn region ProgressDoBlock transparent matchgroup=ProgressDo start="\<do\>" matchgroup=ProgressDo end="\<end\>" contains=ALLBUT,ProgressProcedure,ProgressFunction
  32. syn region ProgressForBlock transparent matchgroup=ProgressFor start="\<for\>" matchgroup=ProgressFor end="\<end\>" contains=ALLBUT,ProgressProcedure,ProgressFunction
  33. syn region ProgressRepeatBlock transparent matchgroup=ProgressRepeat start="\<repeat\>" matchgroup=ProgressRepeat end="\<end\>" contains=ALLBUT,ProgressProcedure,ProgressFunction
  34. syn region ProgressCaseBlock transparent matchgroup=ProgressCase start="\<case\>" matchgroup=ProgressCase end="\<end\scase\>" contains=ALLBUT,ProgressProcedure,ProgressFunction
  35.  
  36. " These are Progress reserved words,
  37. " and they could go in ProgressReserved,
  38. " but I found it more helpful to highlight them in a different color.
  39. syn keyword ProgressConditional    if else then when otherwise
  40. syn keyword ProgressFor                each where
  41.  
  42. " Make those TODO and debugging notes stand out!
  43. syn keyword    ProgressTodo            contained    TODO BUG FIX
  44. syn keyword ProgressDebug            contained    DEBUG
  45. syn keyword ProgressDebug                        debugger
  46.  
  47. syn keyword ProgressFunction    procedure function
  48.  
  49. syn keyword ProgressReserved    accum[ulate] active-window add alias all alter ambig[uous] analyz[e] and any apply as asc[ending] assign at attr[-space]
  50. syn keyword ProgressReserved    authorization auto-ret[urn] avail[able] back[ground] before-h[ide] begins bell between blank break btos by call can-do can-find
  51. syn keyword ProgressReserved    center[ed] check chr clear clipboard col colon color col[umn] column-lab[el] col[umns] compiler connected control count-of
  52. syn keyword ProgressReserved    cpstream create ctos current current-changed current-lang[uage] current-window current_date curs[or] database dataservers
  53. syn keyword ProgressReserved    dbcodepage dbcollation dbname dbrest[rictions] dbtaskid dbtype dbvers[ion] dde deblank debug-list debugger decimals declare
  54. syn keyword ProgressReserved    def default default-noxl[ate] default-window def[ine] delete delimiter desc[ending] dict[ionary] disable discon[nect] disp
  55. syn keyword ProgressReserved    disp[lay] distinct dos down drop editing enable encode entry error-stat[us] escape etime except exclusive
  56. syn keyword ProgressReserved    exclusive[-lock] exclusive-web-us[er] exists export false fetch field field[s] file-info[rmation] fill find find-case-sensitive
  57. syn keyword ProgressReserved    find-global find-next-occurrence find-prev-occurrence find-select find-wrap-around first first-of focus font form form[at]
  58. syn keyword ProgressReserved    fram[e] frame-col frame-db frame-down frame-field frame-file frame-inde[x] frame-line frame-name frame-row frame-val[ue]
  59. syn keyword ProgressReserved    from from-c[hars] from-p[ixels] gateway[s] get-byte get-codepage[s] get-coll[ations] get-key-val[ue] getbyte global go-on
  60. syn keyword ProgressReserved    go-pend[ing] grant graphic-e[dge] group having header help hide import in index indicator input input-o[utput] insert
  61. syn keyword ProgressReserved    into is is-attr[-space] join kblabel key-code key-func[tion] key-label keycode keyfunc[tion] keylabel keys keyword label
  62. syn keyword ProgressReserved    last last-even[t] last-key last-of lastkey ldbname leave library like line-count[er] listi[ng] locked lookup machine-class
  63. syn keyword ProgressReserved    map member message message-lines mouse mpe new next next-prompt no no-attr[-space] no-error no-f[ill] no-help no-hide no-label[s]
  64. syn keyword ProgressReserved    no-lock no-map no-mes[sage] no-pause no-prefe[tch] no-undo no-val[idate] no-wait not null num-ali[ases] num-dbs num-entries
  65. syn keyword ProgressReserved    of off old on open opsys option or os-append os-command os-copy os-create-dir os-delete os-dir os-drive[s] os-error os-rename
  66. syn keyword ProgressReserved    os2 os400 output overlay page page-bot[tom] page-num[ber] page-top param[eter] pause pdbname persist[ent] pixels
  67. syn keyword ProgressReserved    preproc[ess] privileges proc-ha[ndle] proc-st[atus] process program-name Progress prompt prompt[-for] promsgs propath provers[ion]
  68. syn keyword ProgressReserved    put put-byte put-key-val[ue] putbyte query query-tuning quit r-index rcode-informatio[n] readkey recid record-len[gth] rect[angle]
  69. syn keyword ProgressReserved    release reposition retain retry return return-val[ue] revert revoke run save schema screen screen-io screen-lines
  70. syn keyword ProgressReserved    scroll sdbname search seek select self session set setuser[id] share[-lock] shared show-stat[s] skip some space status stream
  71. syn keyword ProgressReserved    stream-io string-xref system-dialog table term term[inal] text text-cursor text-seg[-growth] this-procedure time title
  72. syn keyword ProgressReserved    to today top-only trans trans[action] trigger triggers trim true underl[ine] undo unform[atted] union unique unix up update
  73. syn keyword ProgressReserved    use-index use-revvideo use-underline user user[id] using v6frame value values view view-as vms wait-for web-con[text]
  74. syn keyword ProgressReserved    window window-maxim[ized] window-minim[ized] window-normal with work-tab[le] workfile write xcode xref yes _cbit
  75. syn keyword ProgressReserved    _control _list _memory _msg _pcontrol _serial[-num] _trace
  76.  
  77. " Strings. Handles embedded quotes.
  78. " Note that, for some reason, Progress doesn't use the backslash, "\"
  79. " as the escape character; it uses tilde, "~".
  80. syn region ProgressString    matchgroup=ProgressQuote    start=+"+ end=+"+    skip=+\~"+
  81. syn region ProgressString    matchgroup=ProgressQuote    start=+'+ end=+'+    skip=+\~'+
  82.  
  83. syn match  ProgressIdentifier            "\<[a-zA-Z_][a-zA-Z0-9_]*\>()"
  84.  
  85. " syn match  ProgressDelimiter            "()"
  86.  
  87. " syn match  ProgressMatrixDelimiter    "[][]"
  88.  
  89. " If you prefer you can highlight the range
  90. "syn match  ProgressMatrixDelimiter        "[\d\+\.\.\d\+]"
  91.  
  92. syn match  ProgressNumber                "\<\d\+\(u\=l\=\|lu\|f\)\>"
  93. syn match  ProgressByte                    "\$[0-9a-fA-F]\+"
  94.  
  95. " If you don't like tabs:
  96. "syn match ProgressShowTab "\t"
  97. "syn match ProgressShowTabc "\t"
  98.  
  99. syn region ProgressComment        start="/\*"  end="\*/" contains=ProgressComment,ProgressTodo,ProgressDebug
  100. syn match ProgressInclude        "^[     ]*[{].*\.i[}]"
  101.  
  102. syn match ProgressSubstitute    "^[     ]*[{].*[^i][}]"
  103. syn match ProgressPreProc        "^[     ]*&.*"
  104.  
  105. syn match ProgressOperator        "[!;|)(:.><+*=-]"
  106.  
  107. syn keyword ProgressOperator    <= <> >= abs[olute] accelerator across add-first add-last advise alert-box allow-replication ansi-only anywhere append appl-alert[-boxes] application as-cursor ask-overwrite
  108. syn keyword ProgressOperator    attach[ment] auto-end-key auto-endkey auto-go auto-ind[ent] auto-resize auto-z[ap] available-formats ave[rage] avg backward[s] base-key batch[-mode] bgc[olor] binary
  109. syn keyword ProgressOperator    bind-where block-iteration-display border-bottom border-bottom-ch[ars] border-bottom-pi[xels] border-left border-left-char[s] border-left-pixe[ls] border-right border-right-cha[rs]
  110. syn keyword ProgressOperator    border-right-pix[els] border-t[op] border-t[op-chars] border-top-pixel[s] both bottom box box-select[able] browse browse-header buffer buffer-chars buffer-lines
  111. syn keyword ProgressOperator    button button[s] byte cache cache-size can-query can-set cancel-break cancel-button caps careful-paint case-sensitive cdecl char[acter] character_length charset
  112. syn keyword ProgressOperator    checked choose clear-select[ion] close code codepage codepage-convert col-of colon-align[ed] color-table column-bgc[olor] column-dcolor column-fgc[olor] column-font
  113. syn keyword ProgressOperator    column-label-bgc[olor] column-label-dcolor column-label-fgc[olor] column-label-font column-of column-pfc[olor] column-sc[rolling] combo-box command compile complete
  114. syn keyword ProgressOperator    connect constrained contents context context-pop[up] control-containe[r] c[ontrol-form] convert-to-offse[t] convert count cpcase cpcoll cpint[ernal] cplog
  115. syn keyword ProgressOperator    cpprint cprcodein cprcodeout cpterm crc-val[ue] c[reate-control] create-result-list-entry create-test-file current-column current-environm[ent] current-iteration
  116. syn keyword ProgressOperator    current-result-row current-row-modified current-value cursor-char cursor-line cursor-offset data-entry-retur[n] data-t[ype] date date-f[ormat] day db-references
  117. syn keyword ProgressOperator    dcolor dde-error dde-i[d] dde-item dde-name dde-topic debu[g] dec[imal] default-b[utton] default-extensio[n] defer-lob-fetch defined delete-char delete-current-row
  118. syn keyword ProgressOperator    delete-line delete-selected-row delete-selected-rows deselect-focused-row deselect-rows deselect-selected-row d[esign-mode] dialog-box dialog-help dir disabled display-message
  119. syn keyword ProgressOperator    display-t[ype] double drag-enabled drop-down drop-down-list dump dynamic echo edge edge[-chars] edge-p[ixels] editor empty end-key endkey entered eq error error-col[umn]
  120. syn keyword ProgressOperator    error-row event-t[ype] event[s] exclusive-id execute exp expand extended extent external extract fetch-selected-row fgc[olor] file file-name file-off[set] file-type
  121. syn keyword ProgressOperator    filename fill-in filled filters first-child first-column first-proc[edure] first-tab-i[tem] fixed-only float focused-row font-based-layout font-table force-file
  122. syn keyword ProgressOperator    fore[ground] form-input forward[s] frame-spa[cing] frame-x frame-y frequency from-cur[rent] full-height full-height-char[s] full-height-pixe[ls] full-pathn[ame]
  123. syn keyword ProgressOperator    full-width full-width[-chars] full-width-pixel[s] ge get get-blue[-value] g[et-char-property] get-double get-dynamic get-file get-float get-green[-value]
  124. syn keyword ProgressOperator    get-iteration get-license get-long get-message get-number get-pointer-value get-red[-value] get-repositioned-row get-selected-wid[get] get-short get-signature get-size
  125. syn keyword ProgressOperator    get-string get-tab-item get-text-height get-text-height-char[s] get-text-height-pixe[ls] get-text-width get-text-width-c[hars] get-text-width-pixel[s] get-unsigned-short
  126. syn keyword ProgressOperator    grayed grid-factor-horizont[al] grid-factor-vert[ical] grid-set grid-snap grid-unit-height grid-unit-height-cha[rs] grid-unit-height-pix[els] grid-unit-width grid-unit-width-char[s]
  127. syn keyword ProgressOperator    grid-unit-width-pixe[ls] grid-visible gt handle height height[-chars] height-p[ixels] help-con[text] helpfile-n[ame] hidden hint hori[zontal] hwnd image image-down
  128. syn keyword ProgressOperator    image-insensitive image-size image-size-c[hars] image-size-pixel[s] image-up immediate-display index-hint indexed-reposition info[rmation] init init[ial] initial-dir
  129. syn keyword ProgressOperator    initial-filter initiate inner inner-chars inner-lines insert-b[acktab] insert-file insert-row insert-string insert-t[ab] int[eger] internal-entries is-lead-byte
  130. syn keyword ProgressOperator    is-row-selected is-selected item items-per-row join-by-sqldb keep-frame-z-ord[er] keep-messages keep-tab-order key keyword-all label-bgc[olor] label-dc[olor] label-fgc[olor]
  131. syn keyword ProgressOperator    label-font label-pfc[olor] labels language[s] large large-to-small last-child last-tab-i[tem] last-proce[dure] lc le leading left left-align[ed] left-trim length
  132. syn keyword ProgressOperator    line list-events list-items list-query-attrs list-set-attrs list-widgets load l[oad-control] load-icon load-image load-image-down load-image-insensitive load-image-up
  133. syn keyword ProgressOperator    load-mouse-point[er] load-small-icon log logical lookahead lower lt manual-highlight margin-extra margin-height margin-height-ch[ars] margin-height-pi[xels] margin-width
  134. syn keyword ProgressOperator    margin-width-cha[rs] margin-width-pix[els] matches max max-chars max-data-guess max-height max-height[-chars] max-height-pixel[s] max-rows max-size max-val[ue] max-width
  135. syn keyword ProgressOperator    max-width[-chars] max-width-p[ixels] maximize max[imum] memory menu menu-bar menu-item menu-k[ey] menu-m[ouse] menubar message-area message-area-font message-line
  136. syn keyword ProgressOperator    min min-height min-height[-chars] min-height-pixel[s] min-size min-val[ue] min-width min-width[-chars] min-width-p[ixels] min[imum] mod modified mod[ulo] month mouse-p[ointer]
  137. syn keyword ProgressOperator    movable move-after-tab-i[tem] move-before-tab-[item] move-col[umn] move-to-b[ottom] move-to-eof move-to-t[op] multiple multiple-key multitasking-interval must-exist
  138. syn keyword ProgressOperator    name native ne new-row next-col[umn] next-sibling next-tab-ite[m] next-value no-apply no-assign no-bind-where no-box no-column-scroll[ing] no-convert no-current-value
  139. syn keyword ProgressOperator    no-debug no-drag no-echo no-index-hint no-join-by-sqldb no-lookahead no-row-markers no-scrolling no-separate-connection no-separators no-und[erline] no-word-wrap
  140. syn keyword ProgressOperator    none num-but[tons] num-col[umns] num-copies num-formats num-items num-iterations num-lines num-locked-colum[ns] num-messages num-results num-selected num-selected-rows
  141. syn keyword ProgressOperator    num-selected-widgets num-tabs num-to-retain numeric numeric-f[ormat] octet_length ok ok-cancel on-frame[-border] ordered-join ordinal orientation os-getenv outer
  142. syn keyword ProgressOperator    outer-join override owner page-size page-wid[th] paged parent partial-key pascal pathname pfc[olor] pinnable pixels-per-colum[n] pixels-per-row popup-m[enu] popup-o[nly]
  143. syn keyword ProgressOperator    position precision presel[ect] prev prev-col[umn] prev-sibling prev-tab-i[tem] primary printer-control-handle printer-setup private-d[ata] profiler Progress-s[ource]
  144. syn keyword ProgressOperator    publish put-double put-float put-long put-short put-string put-unsigned-short query-off-end question radio-buttons radio-set random raw raw-transfer read-file read-only
  145. syn keyword ProgressOperator    real recursive refresh refreshable replace replace-selection-text replication-create replication-delete replication-write request resiza[ble] resize retry-cancel
  146. syn keyword ProgressOperator    return-ins[erted] return-to-start-di[r] reverse-from right right-align[ed] right-trim round row row-ma[rkers] row-of rowid rule rule-row rule-y save-as save-file
  147. syn keyword ProgressOperator    screen-val[ue] scroll-bars scroll-delta scroll-horiz-value scroll-offset scroll-to-current-row scroll-to-i[tem] scroll-to-selected-row scroll-vert-value scrollable
  148. syn keyword ProgressOperator    scrollbar-horizo[ntal] scrollbar-vertic[al] scrolled-row-positio[n] scrolling se-check-pools se-enable-of[f] se-enable-on se-num-pools se-use-messa[ge] section select-focused-row
  149. syn keyword ProgressOperator    select-next-row select-prev-row select-repositioned-row select-row selectable selected selected-items selection-end selection-list selection-start selection-text
  150. syn keyword ProgressOperator    send sensitive separate-connection separators set-blue[-value] set-break set-cell-focus set-contents set-dynamic set-green[-value] set-leakpoint set-pointer-valu[e]
  151. syn keyword ProgressOperator    s[et-property] set-red[-value] set-repositioned-row set-selection set-size set-wait[-state] side-lab side-lab[e] side-lab[el] side-label-handl[e] side-lab[els] silent
  152. syn keyword ProgressOperator    simple single size size-c[hars] size-p[ixels] slider smallint sort source source-procedure sql sqrt start status-area status-area-font status-bar stdcall stenciled stop stoppe[d]
  153. syn keyword ProgressOperator    stored-proc[edure] string sub-ave[rage] sub-count sub-max[imum] sub-me[nu] sub-menu-help sub-min[imum] sub-total subscribe subst[itute] substr[ing] subtype sum super suppress-warning[s]
  154. syn keyword ProgressOperator    system-alert-box[es] system-help tab-position tabbable target target-procedure temp-dir[ectory] temp-table terminate text-selected three-d through thru tic-marks time-source title-bgc[olor]
  155. syn keyword ProgressOperator    title-dc[olor] title-fgc[olor] title-fo[nt] to-rowid toggle-box tool-bar top topic total trailing trunc[ate] type unbuff[ered] unique-id unload unsubscribe upper use use-dic[t-exps]
  156. syn keyword ProgressOperator    use-filename use-text v6display valid-event valid-handle validate validate-condition validate-message var[iable] vert[ical] virtual-height virtual-height-c[hars]
  157. syn keyword ProgressOperator    virtual-height-pixel[s] virtual-width virtual-width-ch[ars] virtual-width-pi[xels] visible wait warning weekday widget widget-e[nter] widget-h[andle] widget-l[eave]
  158. syn keyword ProgressOperator    widget-pool width width[-chars] width-p[ixels] window-name window-sta[te] window-sys[tem] word-wrap x-of y-of year yes-no yes-no-cancel _dcm
  159.  
  160. syn keyword ProgressType        char[acter] int[eger] format
  161. syn keyword ProgressType        var[iable] log[ical] da[te]
  162.  
  163. syn sync lines=800
  164.  
  165. " Define the default highlighting.
  166. " For version 5.7 and earlier: only when not done already
  167. " For version 5.8 and later: only when an item doesn't have highlighting yet
  168. if version >= 508 || !exists("did_progress_syntax_inits")
  169.   if version < 508
  170.     let did_progress_syntax_inits = 1
  171.     command -nargs=+ HiLink hi link <args>
  172.   else
  173.     command -nargs=+ HiLink hi def link <args>
  174.   endif
  175.  
  176.   " The default methods for highlighting. Can be overridden later.
  177.   HiLink ProgressByte                Number
  178.   HiLink ProgressCase                Repeat
  179.   HiLink ProgressComment            StatusLine
  180.   HiLink ProgressConditional        Conditional
  181.   HiLink ProgressDebug                Debug
  182.   HiLink ProgressDo                    Repeat
  183.   HiLink ProgressEndError            Error
  184.   HiLink ProgressFor                Repeat
  185.   HiLink ProgressFunction            Procedure
  186.   HiLink ProgressInclude            Include
  187.   HiLink ProgressLabel                Label
  188.   HiLink ProgressMatrixDelimiter    Identifier
  189.   HiLink ProgressModifier            Type
  190.   HiLink ProgressNumber                Number
  191.   HiLink ProgressOperator            Function
  192.   HiLink ProgressPreProc            PreProc
  193.   HiLink ProgressProcedure            Procedure
  194.   HiLink ProgressQuote                Delimiter
  195.   HiLink ProgressRepeat                Repeat
  196.   HiLink ProgressReserved            Identifier
  197.   HiLink ProgressString                String
  198.   HiLink ProgressStructure            Structure
  199.   HiLink ProgressSubstitute            PreProc
  200.   HiLink ProgressTodo                Todo
  201.   HiLink ProgressType                Statement
  202.   HiLink ProgressUnclassified        Statement
  203.  
  204.   " Optional highlighting
  205.   " HiLink ProgressDelimiter        Identifier
  206.   " HiLink ProgressShowTab            Error
  207.   " HiLink ProgressShowTabc            Error
  208.   " HiLink ProgressIdentifier        Identifier
  209.  
  210.   delcommand HiLink
  211. endif
  212.  
  213. let b:current_syntax = "progress"
  214.  
  215. " vim: ts=4 sw=2
  216.